package com.sg.dto.biz.framework.req;

import com.sg.common.dto.BaseDto;
import com.sg.dto.base.framework.req.DeptDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

/**
 * @desc ImplementToDeptManagerSendMsgComReqDto
 * @使用场景
 */
@Data
public class ImplementToDeptManagerSendMsgComReqDto
        extends BaseDto
        implements Serializable {

    @ApiModelProperty("部门列表")
    private List<DeptDto> deptList = new ArrayList<>();

    /**
     * 部门管理者获取条件 ALL:全部 PRINCIPAL:正职 PRINCIPAL_DEPUTY:正副职 ONLY_ADMIN:仅管理员
     */
    @NotNull(message = "部门管理者获取条件不能为空")
    @ApiModelProperty("部门管理者获取条件")
    private String deptDeputyCondition;

    /**
     * 权限标识
     */
    @NotNull(message = "权限标识不能为空")
    @ApiModelProperty("权限标识")
    private String privacyCode;

    /**
     * 模板引擎标识
     */
    @NotNull(message = "模板引擎标识不能为空")
    @ApiModelProperty("模板引擎标识")
    private String templateSemanticEngineCode;

    /**
     * 短信行为类型
     */
    @NotNull(message = "短信行为类型不能为空")
    @ApiModelProperty("短信行为类型")
    private String smsBehaviorType;

}
